<?php
/**
 * 一次性脚本：给 mi_users 表里的所有用户余额做“加法”
 * 用法：浏览器访问
 *   http://你的域名/update_balance.php?add=100
 * 就会把所有人余额 = 原余额 + 100
 * 改完立即生效，用完可删除本文件
 http://你的域名/update_balance.php?add=100
 */

header('Content-Type: application/json; charset=utf-8');

// 1. 引入数据库配置
$dbConfig = include('db_config.php');

// 2. 获取要累加的金额（默认 0）
$addAmount = isset($_GET['add']) ? (string)$_GET['add'] : '0';

try {
    // 3. 建立 PDO 连接
    $dsn = "mysql:host={$dbConfig['host']};dbname={$dbConfig['dbname']};charset={$dbConfig['charset']}";
    $pdo = new PDO($dsn, $dbConfig['username'], $dbConfig['password']);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // 4. 执行加法更新
    //    把“余额”先转成数字（0+余额）再相加，避免字符串拼接
    $stmt = $pdo->prepare("
        UPDATE mi_users
        SET 余额 = CAST(余额 AS DECIMAL(20,2)) + :addAmount
    ");
    $stmt->execute([':addAmount' => $addAmount]);

    // 5. 返回结果
    echo json_encode([
        'status'  => 'success',
        'message' => '已成功给所有用户余额累加：' . $addAmount,
        'rows'    => $stmt->rowCount()   // 受影响的行数
    ], JSON_UNESCAPED_UNICODE);

} catch (PDOException $e) {
    http_response_code(500);
    echo json_encode([
        'status'  => 'error',
        'message' => '数据库操作失败：' . $e->getMessage()
    ], JSON_UNESCAPED_UNICODE);
}
?>